print("-- Initialization --")
const newPath = ";E:\\ts_to_lua\\dst\\?.lua;E:\\ts_to_lua\\dst\\system\\?.lua;";
_G['package'].path = newPath + _G['package'].path;

const InitFnTable: Function[] = [];
const FinaFnTable: Function[] = [];

function initialization(Obj:any): void {
  for (let i = 0; i < InitFnTable.length; i++) {
    InitFnTable[i](Obj)
  }
}

function finalization(Obj:any): void {
  for (let i = 0; i < FinaFnTable.length; i++) {
    FinaFnTable[i](Obj)
  }
}

print("-- Initialization over --")